<?xml version='1.0' encoding='UTF-8' ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
      xmlns:h="http://java.sun.com/jsf/html"
      xmlns:f="http://java.sun.com/jsf/core"
      xmlns:p="http://primefaces.org/ui"
      xmlns:ui="http://java.sun.com/jsf/facelets">

    <ui:composition template="/Layout/mainTemplate.xhtml">

        <ui:define name="content">
            <p:growl id="growl1"/>
            <h:form id="formPelis">
                <div style="width: 70%; float: left;">
                    <p:panel header="Valoración de ítems" style="border: 1px solid !important;">
                        <h:outputText value="Usuario: "/>
                        <h:outputText value="#{ctrPirncipal.usuario.userName}"/>
                        <p:commandButton value="Ver Todas" action="#{ctrPirncipal.listadoCompleto()}" update="dsPelis"/>
                        <p:commandButton value="Ver Solo Calificadas" action="#{ctrPirncipal.buscaSoloCalificadas()}" update="dsPelis"/>
                        <p:commandButton value="Crear Perfil de Usuario" action="#{ctrPirncipal.crearPerfil()}" onclick="PF('dlg2').show();" oncomplete="PF('dlg2').hide();"/>

                        <p:dataScroller id="dsPelis" value="#{ctrPirncipal.listaPelis}" var="peli" chunkSize="10" mode="inline" scrollHeight="500">
                            <f:facet name="header">
                                Scroll Down para más contenidos
                            </f:facet>

                            <h:panelGrid columns="2" style="width:100%">
                                <h:panelGrid columns="2" cellpadding="5">                               
                                    <h:outputText value="Título:" />
                                    <h:outputText value="#{peli.intemDesc}" style="font-weight: bold"/>

                                    <h:outputText value="Genero: " />
                                    <h:outputText value="#{peli.intemGenre}" style="font-weight: bold"/>

                                    <h:outputText value="Calificación:" />
                                    <h:panelGrid columns="2">
                                        <p:rating value="#{peli.rating}" cancel="false"/>
                                        <p:commandButton icon="ui-icon-check" action="#{ctrPirncipal.registraRating(peli)}"/>
                                    </h:panelGrid>

                                </h:panelGrid>
                            </h:panelGrid>
                        </p:dataScroller>
                    </p:panel>
                </div>
                <div style="width: 30%; float: left;">
                    <p:panel header="Opciones del Recomendador" style="border: 1px solid !important;">
                        <h:panelGrid columns="3">
                            <h:outputText value="Algoritmo: "/>
                            <p:selectOneMenu id="cboAlgo" value="#{ctrPirncipal.algoritmo}">
                                <f:selectItem itemLabel="Dispersión" itemValue="1" />
                                <f:selectItem itemLabel="Inferencia" itemValue="0" />
                                <f:selectItem itemLabel="KNN" itemValue="2" />
                            </p:selectOneMenu>
                            <h:outputText value=""/>

                            <h:outputText value="Límite Estereotipos"/>
                            <p:inputText value="#{ctrPirncipal.limiteEstereotipos}"/>
                            <h:outputText value=""/>

                            <h:outputText value="Nro Contenidos"/>
                            <p:inputText value="#{ctrPirncipal.numProgramaciones}"/>
                            <p:commandButton icon="ui-icon-shuffle" title="Generar Aleatorio" action="#{ctrPirncipal.generarParrilla()}" update="dsParrilla"/>

                            <h:outputText value="Nro Recomendaciones"/>
                            <p:inputText value="#{ctrPirncipal.numRecomendacione}"/>
                            <h:outputText value=""/>


                        </h:panelGrid>
                        <p:dataScroller id="dsParrilla" value="#{ctrPirncipal.listaParrilla}" var="peli" chunkSize="10" mode="inline" scrollHeight="372">
                            <f:facet name="header">
                                Parrilla de Programación Aleatoria
                            </f:facet>


                            <h:panelGrid columns="2" cellpadding="5">                               
                                <h:outputText value="Título:" />
                                <h:outputText value="#{peli.intemDesc}" style="font-weight: bold"/>

                                <h:outputText value="Genero: " />
                                <h:outputText value="#{peli.intemGenre}" style="font-weight: bold"/>
                            </h:panelGrid>
                            <p:separator style="width:100%;height:2px" />
                        </p:dataScroller>


                        <p:commandButton value="Generar Recomendaciones" action="#{ctrPirncipal.obtenRecomendaciones()}" update="dlgPelis" onclick="PF('dlg3').show();" oncomplete="PF('dlg1').show();PF('dlg3').hide();"/>

                    </p:panel>
                    <p:dialog header="Recomendación" id="dlgPelis" widgetVar="dlg1" width="400px" height="420px">
                        <p:dataScroller id="dsRecomendados" value="#{ctrPirncipal.listaRecomendados}" var="peli" chunkSize="10" mode="inline" scrollHeight="372">
                            <f:facet name="header">
                                Listado de Recomendaciones
                            </f:facet>


                            <h:panelGrid columns="2" cellpadding="5">                                
                                <h:outputText value="Título:" />
                                <h:outputText value="#{peli.intemDesc}" style="font-weight: bold"/>

                                <h:outputText value="Genero: " />
                                <h:outputText value="#{peli.intemGenre}" style="font-weight: bold"/>

                                <h:outputText value="Valoración: " />
                                <h:outputText value="#{peli.valoracion}" style="font-weight: bold"/>


                            </h:panelGrid>
                            <p:separator style="width:100%;height:2px" />
                        </p:dataScroller>
                    </p:dialog>
                    <p:dialog header="Perfil de Usuario" id="dlgCreandoPerfil" widgetVar="dlg2" width="300px" height="60px" closable="false" modal="true" draggable="false" resizable="false">
                        <h:panelGrid columns="2">
                            <h:outputText value="Creando perfil, por favor espere"/> 
                            <p:graphicImage value="/resources/images/loading.gif" width="40px" height="40px"/>
                        </h:panelGrid>
                    </p:dialog>
                    <p:dialog header="Recomendación" id="dlgGenRec" widgetVar="dlg3" width="400px" height="60px" closable="false" modal="true" draggable="false" resizable="false">
                        <h:panelGrid columns="2">
                            <h:outputText value="Generando Recomendaciones, por favor espere"/> <p:graphicImage value="/resources/images/loading.gif" width="40px" height="40px"/>
                        </h:panelGrid>
                    </p:dialog>
                </div>
            </h:form>
        </ui:define>
    </ui:composition>
</html>